2) 점, 선, 다각형, 원/타원
그리기 명령어를 사용하여 점, 선분, 다각형, 원, 타원을 그리고 스타일을 지정하는 방법을 알아봅니다.
1. 점 찍기
하나 이상의 점 위치에 원형 점을 찍고, 필요에 따라 크기나 스타일, 라벨을 부착할 수 있습니다.
// 단순 점 찍기
dot: A, B, C
// 크기와 색상, 스타일 지정
dot: A, size=4pt, color=#red
dot: B, style=hollow, size=5pt // 속이 빈 점 (Hollow Dot)
// 점과 라벨을 함께 배치
dot: A"A"(sw), B"$B_1$"(ne)
style 옵션에서는 filled (기본값, 속이 찬 점), hollow (속이 빈 점)을 제공합니다.
size 옵션에서는 점의 반지름 크기를 pt나 mm 단위로 지정합니다.
2. 선과 경로 그리기
두 점 이상의 기하학적 경로를 선분, 점선, 화살표 등으로 나타냅니다.
// 기본 선분 그리기
line: A--B
// 대시선과 색상, 두께 지정
line: B--C, stroke=dash, color=#gray, thick=1.5pt
// 화살표 선 그리기
line: A--B, arrow=end // 끝부분 화살표
line: A--B, arrow=both, size=6pt // 양끝 화살표
// 연속된 경로 연산
line: A--B--C--D
3. 다각형 그리기
여러 점을 이어 닫힌 다각형을 만들고, 테두리 스타일과 내부 색상을 지정합니다.
// 삼각형 그리기
poly: A--B--C, stroke=1.5pt
// 테두리와 내부 채우기를 동시에 지정
poly: A--B--C--D, stroke=solid, color=#black, fill=#blue/15
// 정다각형 매크로 생성 후 그리기
P_hex = regular_polygon(n=6, center=(0,0), r=3)
poly: P_hex, fill=#orange/20, stroke=dash
4. 원과 타원 그리기
중심점과 반지름(또는 장축/단축)을 지정하여 원과 타원을 그립니다.
4-1. 원
// 중심점과 반지름(r)을 지정하는 원
circle: center=(0,0), r=3, stroke=1.5pt
// 세 점을 지나는 외접원 또는 두 점을 지름으로 하는 원
circle: center=A, r=dist(A, B)
circle: circumcircle(A, B, C), stroke=dash, color=#blue/60
4-2. 타원
// 중심점, x축 반지름(rx), y축 반지름(ry), 회전 각도(rot) 지정
ellipse: center=(0,0), rx=4, ry=2, rot=30deg, fill=#green/10
5. 전체적으로 본다면
// 점 정의
A = (0, 0)
B = (4, 0)
C = (2, 3)
// 1. 다각형 및 내각 선 그리기
poly: A--B--C, stroke=1.5pt, fill=#gray/10
line: C--(2,0), stroke=dash // C에서 내린 수선
// 2. 원 그리기
O_circ = circumcenter(A, B, C)
circle: center=O_circ, r=circumradius(A, B, C), stroke=dash, color=#blue/50
// 3. 점 표시 및 라벨 지정
dot: A"A"(sw), B"B"(se), C"C"(n), O_circ"O"(e), size=4pt
다음 문서에서는 영역 채우기(shade:), 빗금 패턴(hatch:), 도형 간 교집합/합집합을 구하는 CSG 불리언 연산에 대해 배웁시다.